using System;
using System.Collections.Generic;
using System.Text;
using GMID = System.Int64;

namespace Cobalt75.GreyMatter
{
    public class GMTable
    {
        private GMCommunicator pCommunicator;
        public GMCommunicator Communicator
        {
            get
            {
                return pCommunicator;
            }
        }
        public GMTable(GMCommunicator communicator)
        {
            pCommunicator = communicator;
            pDateCreated = DateTime.UtcNow;
            pDateModified = DateTime.UtcNow;
        }

        [GMColumn(
           Unique = true,
           IsPrimary = true)]
        internal GMID pId;
        public GMID Id
        {
            get
            {
                return (pId);
            }
        }

        [GMColumn(
            Precision=true
            )]
        internal DateTime pDateCreated;
        public DateTime DateCreated
        {
            get
            {
                return (pDateCreated);
            }
        }

        [GMColumn(
            Precision=true
            )]
        internal DateTime pDateModified;
        public DateTime DateModified
        {
            get
            {
                return (pDateModified);
            }
        }

        public void Changed()
        {

            pDateModified = DateTime.UtcNow;
        }

        
    }
}
